package com.zhanghao.sdk;

import android.annotation.SuppressLint;
import android.content.Context;
import android.content.Intent;

import com.zhanghao.sdk.callback.IZHSDKCallback;
import com.zhanghao.sdk.model.Order;
import com.zhanghao.sdk.model.Role;

import java.util.HashMap;

/**
 * SDK中心管理
 * @author ZhangHao
 * @version 1.0.0
 */
public class SDKManager implements ChannelAPI, ChannelSDK, IUnionSDK {
    @SuppressLint("StaticFieldLeak")// 去掉警告提示 不要用static修饰,否则mainContext可能会出现内存泄露.
    private static SDKManager instance;
    private Context mainContext;

    public Context getMainContext() {
        return mainContext;
    }

    public static SDKManager getInstance() {
        if (instance == null) {
           instance = new SDKManager();
        }
        return instance;
    }

    @Override
    public void regReport(HashMap hashMap) {

    }

    @Override
    public void loginReport(HashMap hashMap) {

    }

    @Override
    public void payReport(HashMap hashMap) {

    }

    @Override
    public void customReport(String reportEventName, HashMap hashMap) {

    }

    @Override
    public void init(Context context, IZHSDKCallback SDKCallback) {
        mainContext = context;
    }

    @Override
    public void login() {

    }

    @Override
    public void pay(Order order) {

    }

    @Override
    public void gameReport(String eventName, Role roleInfo) {

    }

    @Override
    public void customEvent(String eventName, HashMap args) {

    }

    @Override
    public void logOut() {

    }

    @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {

    }

    @Override
    public void onResume() {

    }

    @Override
    public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {

    }
}
